<!DOCTYPE html>
<html lang="zh-CN">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        .father {
            width: 500px;
            height: 400px;
            background-color: #00ff7f;
            margin-top: 100px;
            /* 1、为父元素定义上边框 */
            border-top: 1px solid transparent;

            /* 2、为父元素定义上内边距 */
            /* padding-top: 1px; */
            /* 3、为父元素添加 overflow:hidden 这个最好，因为不会把盒子撑大 */
            overflow: hidden;
        }

        .son {
            width: 100px;
            height: 100px;
            background-color: #ee5959;
            /* 此时父子都有上外边距，，会发生塌陷较大的外边距 */
            margin-top: 80px;
        }
    </style>
</head>

<body>
    <!-- 对于两个嵌套关系（父子关系）的块元素，
    父元素有上外边距同时子元素也有上外边距，
    此时父元素会塌陷较大的外边距值。
    解决方案：
        1、为父元素定义上边框
        2、为父元素定义上内边距
        3、为父元素添加 overflow:hidden
    -->
    <div class="father">
        <div class="son"></div>
    </div>
</body>

</html>